<?xml version='1.0' encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html lang="en" xml:lang="en" xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <link href="cpip.css" rel="stylesheet" type="text/css" />
    <title>File: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/personality.h</title>
  </head>
  <body>
    <h1>File: /Users/paulross/dev/linux/linux-3.13/include/uapi/linux/personality.h</h1>
    <p>Green shading in the line number column
means the source is part of the translation unit, red means it is conditionally excluded.
Highlighted line numbers link to the translation unit page. Highlighted macros link to
the macro page.</p>
    <pre><a name="1" /><span class="True">       1:</span> <span class="f">#</span><span class="n">ifndef</span> <a href="cpu.c_macros_noref.html#_X1VBUElfTElOVVhfUEVSU09OQUxJVFlfSF8w"><span class="b">_UAPI_LINUX_PERSONALITY_H</span></a>
<a name="2" /><span class="True">       2:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_X1VBUElfTElOVVhfUEVSU09OQUxJVFlfSF8w"><span class="b">_UAPI_LINUX_PERSONALITY_H</span></a>
<a name="3" /><span class="True">       3:</span> 
<a name="4" /><span class="True">       4:</span> 
<a name="5" /><span class="True">       5:</span> <span class="k">/*</span>
<a name="6" /><span class="True">       6:</span> <span class="k"> * Flags for bug emulation.</span>
<a name="7" /><span class="True">       7:</span> <span class="k"> *</span>
<a name="8" /><span class="True">       8:</span> <span class="k"> * These occupy the top three bytes.</span>
<a name="9" /><span class="True">       9:</span> <span class="k"> */</span>
<a name="10" /><span class="True">      10:</span> <span class="m">enum</span> <span class="f">{</span>
<a name="11" /><span class="True">      11:</span>     <span class="b">UNAME26</span>    <span class="f">=</span>               <span class="c">0x0020000</span><span class="f">,</span>
<a name="12" /><span class="True">      12:</span>     <span class="b">ADDR_NO_RANDOMIZE</span> <span class="f">=</span>     <span class="c">0x0040000</span><span class="f">,</span>    <span class="k">/* disable randomization of VA space */</span>
<a name="13" /><span class="True">      13:</span>     <span class="b">FDPIC_FUNCPTRS</span> <span class="f">=</span>    <span class="c">0x0080000</span><span class="f">,</span>    <span class="k">/* userspace function ptrs point to descriptors</span>
<a name="14" /><span class="True">      14:</span> <span class="k">                         * (signal handling)</span>
<a name="15" /><span class="True">      15:</span> <span class="k">                         */</span>
<a name="16" /><span class="True">      16:</span>     <span class="b">MMAP_PAGE_ZERO</span> <span class="f">=</span>    <span class="c">0x0100000</span><span class="f">,</span>
<a name="17" /><span class="True">      17:</span>     <span class="b">ADDR_COMPAT_LAYOUT</span> <span class="f">=</span>    <span class="c">0x0200000</span><span class="f">,</span>
<a name="18" /><span class="True">      18:</span>     <span class="b">READ_IMPLIES_EXEC</span> <span class="f">=</span>    <span class="c">0x0400000</span><span class="f">,</span>
<a name="19" /><span class="True">      19:</span>     <span class="b">ADDR_LIMIT_32BIT</span> <span class="f">=</span>    <span class="c">0x0800000</span><span class="f">,</span>
<a name="20" /><span class="True">      20:</span>     <span class="b">SHORT_INODE</span> <span class="f">=</span>        <span class="c">0x1000000</span><span class="f">,</span>
<a name="21" /><span class="True">      21:</span>     <span class="b">WHOLE_SECONDS</span> <span class="f">=</span>        <span class="c">0x2000000</span><span class="f">,</span>
<a name="22" /><span class="True">      22:</span>     <span class="b">STICKY_TIMEOUTS</span>    <span class="f">=</span>    <span class="c">0x4000000</span><span class="f">,</span>
<a name="23" /><span class="True">      23:</span>     <span class="b">ADDR_LIMIT_3GB</span> <span class="f">=</span>     <span class="c">0x8000000</span><span class="f">,</span>
<a name="24" /><span class="True">      24:</span> <span class="f">}</span><span class="f">;</span>
<a name="25" /><span class="True">      25:</span> 
<a name="26" /><span class="True">      26:</span> <span class="k">/*</span>
<a name="27" /><span class="True">      27:</span> <span class="k"> * Security-relevant compatibility flags that must be</span>
<a name="28" /><span class="True">      28:</span> <span class="k"> * cleared upon setuid or setgid exec:</span>
<a name="29" /><span class="True">      29:</span> <span class="k"> */</span>
<a name="30" /><span class="True">      30:</span> <span class="f">#</span><span class="n">define</span> <a href="cpu.c_macros_noref.html#_UEVSX0NMRUFSX09OX1NFVElEXzA_"><span class="b">PER_CLEAR_ON_SETID</span></a> <span class="f">(</span><span class="b">READ_IMPLIES_EXEC</span>  <span class="f">|</span> \
<a name="31" /><span class="True">      31:</span>                 <span class="b">ADDR_NO_RANDOMIZE</span>  <span class="f">|</span> \
<a name="32" /><span class="True">      32:</span>                 <span class="b">ADDR_COMPAT_LAYOUT</span> <span class="f">|</span> \
<a name="33" /><span class="True">      33:</span>                 <span class="b">MMAP_PAGE_ZERO</span><span class="f">)</span>
<a name="34" /><span class="True">      34:</span> 
<a name="35" /><span class="True">      35:</span> <span class="k">/*</span>
<a name="36" /><span class="True">      36:</span> <span class="k"> * Personality types.</span>
<a name="37" /><span class="True">      37:</span> <span class="k"> *</span>
<a name="38" /><span class="True">      38:</span> <span class="k"> * These go in the low byte.  Avoid using the top bit, it will</span>
<a name="39" /><span class="True">      39:</span> <span class="k"> * conflict with error returns.</span>
<a name="40" /><span class="True">      40:</span> <span class="k"> */</span>
<a name="41" /><span class="True">      41:</span> <span class="m">enum</span> <span class="f">{</span>
<a name="42" /><span class="True">      42:</span>     <span class="b">PER_LINUX</span> <span class="f">=</span>        <span class="c">0x0000</span><span class="f">,</span>
<a name="43" /><span class="True">      43:</span>     <span class="b">PER_LINUX_32BIT</span> <span class="f">=</span>    <span class="c">0x0000</span> <span class="f">|</span> <span class="b">ADDR_LIMIT_32BIT</span><span class="f">,</span>
<a name="44" /><span class="True">      44:</span>     <span class="b">PER_LINUX_FDPIC</span> <span class="f">=</span>    <span class="c">0x0000</span> <span class="f">|</span> <span class="b">FDPIC_FUNCPTRS</span><span class="f">,</span>
<a name="45" /><span class="True">      45:</span>     <span class="b">PER_SVR4</span> <span class="f">=</span>        <span class="c">0x0001</span> <span class="f">|</span> <span class="b">STICKY_TIMEOUTS</span> <span class="f">|</span> <span class="b">MMAP_PAGE_ZERO</span><span class="f">,</span>
<a name="46" /><span class="True">      46:</span>     <span class="b">PER_SVR3</span> <span class="f">=</span>        <span class="c">0x0002</span> <span class="f">|</span> <span class="b">STICKY_TIMEOUTS</span> <span class="f">|</span> <span class="b">SHORT_INODE</span><span class="f">,</span>
<a name="47" /><span class="True">      47:</span>     <span class="b">PER_SCOSVR3</span> <span class="f">=</span>        <span class="c">0x0003</span> <span class="f">|</span> <span class="b">STICKY_TIMEOUTS</span> <span class="f">|</span>
<a name="48" /><span class="True">      48:</span>                      <span class="b">WHOLE_SECONDS</span> <span class="f">|</span> <span class="b">SHORT_INODE</span><span class="f">,</span>
<a name="49" /><span class="True">      49:</span>     <span class="b">PER_OSR5</span> <span class="f">=</span>        <span class="c">0x0003</span> <span class="f">|</span> <span class="b">STICKY_TIMEOUTS</span> <span class="f">|</span> <span class="b">WHOLE_SECONDS</span><span class="f">,</span>
<a name="50" /><span class="True">      50:</span>     <span class="b">PER_WYSEV386</span> <span class="f">=</span>        <span class="c">0x0004</span> <span class="f">|</span> <span class="b">STICKY_TIMEOUTS</span> <span class="f">|</span> <span class="b">SHORT_INODE</span><span class="f">,</span>
<a name="51" /><span class="True">      51:</span>     <span class="b">PER_ISCR4</span> <span class="f">=</span>        <span class="c">0x0005</span> <span class="f">|</span> <span class="b">STICKY_TIMEOUTS</span><span class="f">,</span>
<a name="52" /><span class="True">      52:</span>     <span class="b">PER_BSD</span> <span class="f">=</span>        <span class="c">0x0006</span><span class="f">,</span>
<a name="53" /><span class="True">      53:</span>     <span class="b">PER_SUNOS</span> <span class="f">=</span>        <span class="c">0x0006</span> <span class="f">|</span> <span class="b">STICKY_TIMEOUTS</span><span class="f">,</span>
<a name="54" /><span class="True">      54:</span>     <span class="b">PER_XENIX</span> <span class="f">=</span>        <span class="c">0x0007</span> <span class="f">|</span> <span class="b">STICKY_TIMEOUTS</span> <span class="f">|</span> <span class="b">SHORT_INODE</span><span class="f">,</span>
<a name="55" /><span class="True">      55:</span>     <span class="b">PER_LINUX32</span> <span class="f">=</span>        <span class="c">0x0008</span><span class="f">,</span>
<a name="56" /><span class="True">      56:</span>     <span class="b">PER_LINUX32_3GB</span> <span class="f">=</span>    <span class="c">0x0008</span> <span class="f">|</span> <span class="b">ADDR_LIMIT_3GB</span><span class="f">,</span>
<a name="57" /><span class="True">      57:</span>     <span class="b">PER_IRIX32</span> <span class="f">=</span>        <span class="c">0x0009</span> <span class="f">|</span> <span class="b">STICKY_TIMEOUTS</span><span class="f">,</span><span class="k">/* IRIX5 32-bit */</span>
<a name="58" /><span class="True">      58:</span>     <span class="b">PER_IRIXN32</span> <span class="f">=</span>        <span class="c">0x000a</span> <span class="f">|</span> <span class="b">STICKY_TIMEOUTS</span><span class="f">,</span><span class="k">/* IRIX6 new 32-bit */</span>
<a name="59" /><span class="True">      59:</span>     <span class="b">PER_IRIX64</span> <span class="f">=</span>        <span class="c">0x000b</span> <span class="f">|</span> <span class="b">STICKY_TIMEOUTS</span><span class="f">,</span><span class="k">/* IRIX6 64-bit */</span>
<a name="60" /><span class="True">      60:</span>     <span class="b">PER_RISCOS</span> <span class="f">=</span>        <span class="c">0x000c</span><span class="f">,</span>
<a name="61" /><span class="True">      61:</span>     <span class="b">PER_SOLARIS</span> <span class="f">=</span>        <span class="c">0x000d</span> <span class="f">|</span> <span class="b">STICKY_TIMEOUTS</span><span class="f">,</span>
<a name="62" /><span class="True">      62:</span>     <span class="b">PER_UW7</span> <span class="f">=</span>        <span class="c">0x000e</span> <span class="f">|</span> <span class="b">STICKY_TIMEOUTS</span> <span class="f">|</span> <span class="b">MMAP_PAGE_ZERO</span><span class="f">,</span>
<a name="63" /><span class="True">      63:</span>     <span class="b">PER_OSF4</span> <span class="f">=</span>        <span class="c">0x000f</span><span class="f">,</span>             <span class="k">/* OSF/1 v4 */</span>
<a name="64" /><span class="True">      64:</span>     <span class="b">PER_HPUX</span> <span class="f">=</span>        <span class="c">0x0010</span><span class="f">,</span>
<a name="65" /><span class="True">      65:</span>     <span class="b">PER_MASK</span> <span class="f">=</span>        <span class="c">0x00ff</span><span class="f">,</span>
<a name="66" /><span class="True">      66:</span> <span class="f">}</span><span class="f">;</span>
<a name="67" /><span class="True">      67:</span> 
<a name="68" /><span class="True">      68:</span> 
<a name="69" /><span class="True">      69:</span> <span class="f">#</span><span class="n">endif</span> <span class="k">/* _UAPI_LINUX_PERSONALITY_H */</span>
<a name="70" /><span class="True">      70:</span> </pre>
  </body>
</html>
